home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / graphic / pbmpl91d.zip / PBMPLUS / PATCH / MAKEFILE.PBM next >
Text File  |  1993-01-08  |  5KB  |  168 lines

  1. .SUFFIXES:    .out .a .o .c
  2. # Makefile for pbm tools.
  3. #
  4. # Copyright (C) 1989, 1991 by Jef Poskanzer.
  5. #
  6. # Permission to use, copy, modify, and distribute this software and its
  7. # documentation for any purpose and without fee is hereby granted, provided
  8. # that the above copyright notice appear in all copies and that both that
  9. # copyright notice and this permission notice appear in supporting
  10. # documentation.  This software is provided "as is" without express or
  11. # implied warranty.
  12.  
  13. # Default values, usually overridden by top-level Makefile.
  14. #CC =        cc
  15. CC =        gcc -ansi -pedantic -fcombine-regs -fpcc-struct-return
  16. #CFLAGS =    -O
  17. CFLAGS =    -g
  18. #CFLAGS =    -g -O
  19. RGBDEF =        -DRGB_DB=\"/usr/lib/X11/rgb\"
  20. TIFFDEF =       -DLIBTIFF
  21. #LDFLAGS =    -s
  22. LDFLAGS =    
  23. INSTALLBINARIES =    /usr/new/pbm
  24. INSTALLMANUALS1 =    /usr/man/man1
  25. SUFFIXMANUALS1 =    1
  26. INSTALLMANUALS3 =    /usr/man/man3
  27. SUFFIXMANUALS3 =    3
  28. INSTALLMANUALS5 =    /usr/man/man5
  29. SUFFIXMANUALS5 =    5
  30. MANCP =            cp
  31.  
  32. INCLUDE =    -I..
  33. ALLCFLAGS =    $(CFLAGS) $(RGBDEF) $(TIFFDEF) $(INCLUDE)
  34. LIBPBM =    libpbm.a
  35. DEFPBM =    pbm.h ../pbmplus.h
  36.  
  37. BINARIES =    atktopbm brushtopbm cmuwmtopbm g3topbm \
  38.         icontopbm gemtopbm macptopbm mgrtopbm \
  39.         pbmlife pbmmake pbmmask pbmreduce \
  40.         pbmtext pbmto10x pbmtoascii pbmtoatk \
  41.         pbmtobbnbg pbmtocmuwm pbmtoepson pbmtog3 \
  42.         pbmtogem pbmtogo pbmtoicon pbmtolj pbmtomacp \
  43.         pbmtomgr pbmtopi3 pbmtoplot pbmtoptx \
  44.         pbmtox10bm pbmtoxbm pbmtoybm pbmtozinc \
  45.         pbmupc pi3topbm xbmtopbm ybmtopbm
  46.  
  47. OBJECTS =    atktopbm.o brushtopbm.o cmuwmtopbm.o g3topbm.o \
  48.         icontopbm.o gemtopbm.o macptopbm.o mgrtopbm.o \
  49.         pbmlife.o pbmmake.o pbmmask.o pbmreduce.o \
  50.         pbmtext.o pbmto10x.o pbmtoascii.o pbmtoatk.o \
  51.         pbmtobbnbg.o pbmtocmuwm.o pbmtoepson.o pbmtog3.o \
  52.         pbmtogem.o pbmtogo.o pbmtoicon.o pbmtolj.o pbmtomacp.o \
  53.         pbmtomgr.o pbmtopi3.o pbmtoplot.o pbmtoptx.o \
  54.         pbmtox10bm.o pbmtoxbm.o pbmtoybm.o pbmtozinc.o \
  55.         pbmupc.o pi3topbm.o xbmtopbm.o ybmtopbm.o
  56.  
  57. MANUALS1 =    $(BINARIES)
  58. MANUALS3 =    libpbm
  59. MANUALS5 =    pbm
  60.  
  61. #all:        binaries
  62. all:        merge
  63. #install:    install.bin
  64. install:    install.merge
  65.  
  66.  
  67. binaries:    $(BINARIES)
  68.  
  69. install.bin:    binaries
  70.     cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
  71.     cp $(BINARIES) $(INSTALLBINARIES)
  72.  
  73.  
  74. merge:        pbmmerge
  75. pbmmerge:    pbmmerge.c $(OBJECTS) $(LIBPBM)
  76.     $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(OBJECTS) $(LIBPBM)
  77.     -aout2exe $@
  78.  
  79. install.merge:    install.pbmmerge
  80. install.pbmmerge:    pbmmerge
  81.     cd $(INSTALLBINARIES) ; rm -f $(BINARIES)
  82.     cp pbmmerge $(INSTALLBINARIES)
  83.     cd $(INSTALLBINARIES) ; for i in $(BINARIES) ; do ln pbmmerge $$i ; done
  84.     rm $(INSTALLBINARIES)/pbmmerge
  85.  
  86.  
  87. install.man:
  88.     for i in $(MANUALS1) ; do \
  89.         rm -f $(INSTALLMANUALS1)/$$i.$(SUFFIXMANUALS1) ; \
  90.         $(MANCP) $$i.1 $(INSTALLMANUALS1)/$$i.$(SUFFIXMANUALS1) ; \
  91.     done
  92.     for i in $(MANUALS3) ; do \
  93.         rm -f $(INSTALLMANUALS3)/$$i.$(SUFFIXMANUALS3) ; \
  94.         $(MANCP) $$i.3 $(INSTALLMANUALS3)/$$i.$(SUFFIXMANUALS3) ; \
  95.     done
  96.     for i in $(MANUALS5) ; do \
  97.         rm -f $(INSTALLMANUALS5)/$$i.$(SUFFIXMANUALS5) ; \
  98.         $(MANCP) $$i.5 $(INSTALLMANUALS5)/$$i.$(SUFFIXMANUALS5) ; \
  99.     done
  100.  
  101.  
  102. # Rules for plain programs.
  103. $(BINARIES):    $(DEFPBM) $(LIBPBM)
  104.     $(CC) $(ALLCFLAGS) $(LDFLAGS) -o $@ $@.c $(LIBPBM)
  105.     -aout2exe $@
  106. $(OBJECTS):    $(DEFPBM)
  107.     $(CC) $(ALLCFLAGS) -Dmain=$*_main -c $*.c
  108.  
  109. # And library.
  110. lib:        $(LIBPBM)
  111. $(LIBPBM):    libpbm1.o libpbm2.o libpbm3.o libpbm4.o libpbm5.o
  112.     -rm $(LIBPBM)
  113.     ar rc $(LIBPBM) libpbm1.o libpbm2.o libpbm3.o libpbm4.o libpbm5.o
  114.     -ranlib $(LIBPBM)
  115.  
  116. libpbm1.o:    $(DEFPBM) ../version.h libpbm.h libpbm1.c
  117.     $(CC) $(ALLCFLAGS) -c libpbm1.c
  118. libpbm2.o:    $(DEFPBM) libpbm.h libpbm2.c
  119.     $(CC) $(ALLCFLAGS) -c libpbm2.c
  120. libpbm3.o:    $(DEFPBM) libpbm.h libpbm3.c
  121.     $(CC) $(ALLCFLAGS) -c libpbm3.c
  122. libpbm4.o:    $(DEFPBM) libpbm.h libpbm4.c
  123.     $(CC) $(ALLCFLAGS) -c libpbm4.c
  124. libpbm5.o:    $(DEFPBM) pbmfont.h libpbm5.c
  125.     $(CC) $(ALLCFLAGS) -c libpbm5.c
  126.  
  127. # Other dependencies.
  128. atktopbm atktopbm.o:        atktopbm.c
  129. brushtopbm brushtopbm.o:    brushtopbm.c
  130. cmuwmtopbm cmuwmtopbm.o:    cmuwmtopbm.c cmuwm.h
  131. g3topbm g3topbm.o:        g3topbm.c g3.h
  132. icontopbm icontopbm.o:        icontopbm.c
  133. gemtopbm gemtopbm.o:        gemtopbm.c
  134. macptopbm macptopbm.o:        macptopbm.c macp.h
  135. mgrtopbm mgrtopbm.o:        mgrtopbm.c mgr.h
  136. pbmlife pbmlife.o:        pbmlife.c
  137. pbmmake pbmmake.o:        pbmmake.c
  138. pbmmask pbmmask.o:        pbmmask.c
  139. pbmreduce pbmreduce.o:        pbmreduce.c
  140. pbmtext pbmtext.o:        pbmtext.c pbmfont.h
  141. pbmto10x pbmto10x.o:        pbmto10x.c
  142. pbmtoascii pbmtoascii.o:    pbmtoascii.c
  143. pbmtoatk pbmtoatk.o:        pbmtoatk.c
  144. pbmtobbnbg pbmtobbnbg.o:    pbmtobbnbg.c
  145. pbmtocmuwm pbmtocmuwm.o:    pbmtocmuwm.c cmuwm.h
  146. pbmtoepson pbmtoepson.o:    pbmtoepson.c
  147. pbmtog3 pbmtog3.o:        pbmtog3.c g3.h
  148. pbmtogem pbmtogem.o:        pbmtogem.c
  149. pbmtogo pbmtogo.o:        pbmtogo.c
  150. pbmtoicon pbmtoicon.o:        pbmtoicon.c
  151. pbmtolj pbmtolj.o:        pbmtolj.c
  152. pbmtomacp pbmtomacp.o:        pbmtomacp.c macp.h
  153. pbmtomgr pbmtomgr.o:        pbmtomgr.c mgr.h
  154. pbmtopi3 pbmtopi3.o:        pbmtopi3.c
  155. pbmtoplot pbmtoplot.o:        pbmtoplot.c
  156. pbmtoptx pbmtoptx.o:        pbmtoptx.c
  157. pbmtox10bm pbmtox10bm.o:    pbmtox10bm.c
  158. pbmtoxbm pbmtoxbm.o:        pbmtoxbm.c
  159. pbmtoybm pbmtoybm.o:        pbmtoybm.c
  160. pbmtozinc pbmtozinc.o:        pbmtozinc.c
  161. pbmupc pbmupc.o:        pbmupc.c
  162. pi3topbm pi3topbm.o:        pi3topbm.c
  163. xbmtopbm xbmtopbm.o:        xbmtopbm.c
  164. ybmtopbm ybmtopbm.o:        ybmtopbm.c
  165.  
  166. clean:
  167.     -rm -f *.o *.a *.cat core $(BINARIES) pbmmerge *.exe
  168.